local shader = love.graphics.newShader([[
    float sdBox( in vec2 p, in vec2 b )
    {
        vec2 d = abs(p)-b;
        return length(max(d,0.0)) + min(max(d.x,d.y),0.0);
    }
    vec4 effect( vec4 color, Image tex, vec2 uv, vec2 pos )
    {
        float d = sdBox(pos / 48.0 - 0.5, vec2(0.4, 0.4));
        float c = smoothstep(0.08, 0.07, d);
        float c2 = smoothstep(0.05, 0.06, d);
        vec3 rgb = mix(vec3(1.0, 1.0, 1.0), vec3(0.0, 0.0, 0.0), c2);
        return vec4(rgb, c);
    }
]])

ImageMaker:make("roundedBorderBox48", 48, 48, shader)
local spf = ResourceSystem:loadSpriteFrame("roundedBorderBox48")
spf.left = 10
spf.right = 10
spf.top = 10
spf.bottom = 10